import { validateDeviceId1, validateAddress } from "@/utils/rules"

export const generatedColnumsType = vm => {
  return [
    {
      title: "类型编号",
      key: "desCode",
      align: "center"
    },
    {
      title: "采集类型",
      key: "des",
      align: "center"
    }
    // {
    //   title: "创建时间",
    //   key: "createdAt",
    //   align: "center",
    //   render: (h, params) => {
    //     const { createdAt } = params.row;
    //     return h("span", vm.moment(createdAt).format("YYYY/MM/DD HH:mm:ss"));
    //   }
    // },
    // {
    //   title: "操作",
    //   align: "center",
    //   width: 190,
    //   render: (h, params) => {
    //     return h(
    //       "Poptip",
    //       {
    //         props: {
    //           confirm: true,
    //           title: "您确定要删除这条数据吗?",
    //           transfer: true,
    //           cancelText: "取消"
    //         },
    //         on: {
    //           "on-ok": () => vm.handleDelete(params.row.id)
    //         }
    //       },
    //       [
    //         h(
    //           "Button",
    //           {
    //             style: {
    //               marginRight: "5px"
    //             },
    //             props: {
    //               type: "error",
    //               size: "small"
    //             }
    //           },
    //           "删除"
    //         )
    //       ]
    //     );
    //   }
    // }
  ]
}

export const generatedColnumsList = vm => {
  return [
    {
      title: "采集类型",
      key: "gatewayTypeDes",
      align: "center"
    },
    {
      title: "端口",
      key: "port",
      align: "center"
    },
    {
      title: "采集频率",
      key: "collectPeriod",
      align: "center"
    },
    {
      title: "更新时间",
      align: "center",
      render: (h, params) => {
        const { updatedAt } = params.row
        return h("span", vm.moment(updatedAt).format("YYYY/MM/DD HH:mm:ss"))
      }
    },
    {
      title: "操作",
      align: "center",
      render: (h, params) => {
        const row = JSON.parse(JSON.stringify(params.row))
        return h("div", [
          h(
            "Button",
            {
              props: {
                type: "primary",
                size: "small"
              },
              style: {
                marginRight: "5px"
              },
              on: {
                click: () => {
                  vm.handleEdit(row)
                }
              }
            },
            "编辑"
          ),
          h(
            "Poptip",
            {
              props: {
                confirm: true,
                title: "您确定要删除这条数据吗?",
                transfer: true,
                cancelText: "取消"
              },
              on: {
                "on-ok": () => {
                  vm.handleDelete(row.id)
                }
              }
            },
            [
              h(
                "Button",
                {
                  props: {
                    type: "error",
                    size: "small"
                  }
                },
                "删除"
              )
            ]
          )
        ])
      }
    }
  ]
}

export const rulesType = {
  name: [
    {
      required: true,
      validator: validateAddress(
        "采集类型",
        "网关类型只能输入中文、字母、数字、下划线和中划线"
      ),
      trigger: "blur"
    }
  ]
}
export const rulesList = {
  gatewayType: [
    {
      required: true,
      trigger: "change",
      type: "number",
      message: "请选择网关类型"
    }
  ],
  name: [
    {
      required: true,
      trigger: "blur",
      message: "请输入网关名称"
    }
  ],
  gatewayCode: [
    {
      required: true,
      trigger: "blur",
      message: "请输入设备编码"
    }
  ],
  port: [
    {
      required: true,
      validator: validateDeviceId1("端口", "端口只能输入正整数"),
      trigger: "blur"
    }
  ],
  collectPeriod: [
    {
      required: true,
      validator: validateDeviceId1("采集频率", "采集频率只能输入正整数"),
      trigger: "blur"
    }
  ]
}
